<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<title>各浏览器下使用 OBJECT 元素和 EMBED 元素嵌入 Flash 存在差异</title>
<style type="text/css">
	.red{
		color:red;
	}
</style>
</head>

<body>
<p style="color: #69F; text-align: center; font-size: 18px; font-weight: bold;">各浏览器下使用 OBJECT 元素和 EMBED 元素嵌入 Flash 存在差异</p>
<p>参考网址：<a href="http://www.w3help.org/zh-cn/causes/HO8001">http://www.w3help.org/zh-cn/causes/HO8001</a><br>
扩展阅读：<a href="http://www.iamued.com/demo/flashjs/">http://www.iamued.com/demo/flashjs/</a>：JavaScript控制flash操作，兼容IE、FF和Chrome等。<br>
<a href="http://www.iamued.com/qianduan/611.html">http://www.iamued.com/qianduan/611.html</a>：JavaScript控制flash操作，兼容IE、FF和Chrome等。<br>
<a href="http://blog.csdn.net/lzkkevin/article/details/6789593">http://blog.csdn.net/lzkkevin/article/details/6789593</a>：JS控制网页中Flash影片的播放（附带各参数）。<br>
<a href="http://www.cnblogs.com/jhxk/articles/1748847.html">http://www.cnblogs.com/jhxk/articles/1748847.html</a>：网页播放器代码大全。<br>
<a href="http://www.cnblogs.com/kevinwang/archive/2008/05/29/1209766.html">http://www.cnblogs.com/kevinwang/archive/2008/05/29/1209766.html</a>：网页播放器代码大全。<br>
<a href="http://www.open-open.com/ajax/Video.htm">http://www.open-open.com/ajax/Video.htm</a>：开源播放器收集列表。<br>
<a href="http://www.cnblogs.com/rainnoless/archive/2009/02/05/1384379.html">http://www.cnblogs.com/rainnoless/archive/2009/02/05/1384379.html</a>：在HTML代码中嵌入Flash文件的解决方案<br>
<a href="http://www.awflasher.com/flash/articles/swfobj.htm">http://www.awflasher.com/flash/articles/swfobj.htm</a>：翻译SWFObject1.5官方文档（SWFObject1.5官方文档简体中文版）<br>
<a href="http://www.360doc.com/content/09/1125/19/6545_9740726.shtml">http://www.360doc.com/content/09/1125/19/6545_9740726.shtml</a>：翻译SWFObject2.0官方文档</p>
<p>网页媒体播放器：<br>
  JW Player：  <a href="http://www.longtailvideo.com/jw-player/">http://www.longtailvideo.com/jw-player/</a>（原youtube使用过的播放器，优点：支持播放列表功能。缺点：英文环境）<br>
  超酷播放器：<a href="http://www.ckplayer.com">http://www.ckplayer.com</a>（推荐，国人开发，帮助文档详细且易于定制开发，缺点：不支持播放列表功能）<br>
极酷播放器：<a href="http://www.cuplayer.com">http://www.cuplayer.com</a>（推荐，国人开发，缺点：收费服务）<br>
Vcastr播放器：<a href="https://code.google.com/p/vcastr/">https://code.google.com/p/vcastr/</a>（开源项目，缺点：播放器界面不友好）或官网<a href="http://www.ruochi.com/main/">http://www.ruochi.com/main/</a><br>
  VPlayer：<a href="http://www.awflasher.com/vplayer">http://www.awflasher.com/vplayer</a>（中文操作界面，缺点：需要SWFObject1.5，版本有些过时了）<br>
</p>
<h2>一、问题描述</h2>
<p>通常情况下，IE 系列浏览器通过 ActiveX 插件使用 OBJECT 元素引入 Flash，而其他浏览器则是通过相应的 NPAPI 插件使用 EMBED 元素。这造成了各浏览器中插入 Flash 的方式的差异。</p>
<h2>二、造成的影响</h2>
<p>若仅仅使用 OBJECT 元素设置了 classid 属性引入 Flash，则可能造成在某些浏览器中 Flash 无法被引入。而若嵌套的 OBJECT 和 EMBED 元素参数不统一，也可能造成引入的 Flash 在各浏览器中出现差异。</p>
<h2>三、受影响的浏览器</h2>
<p>所有浏览器</p>
<h2>四、各种情况的示例演示：</h2>
<p>注：以下代码都以动画文件是“<span class="red">mytest01.swf</span>”为例。使用时，请替换为实际的swf文件。</p>
<p>（1）：第一种：使用 OBJECT 元素 classid 属性以及 PARAM元素。（此方式只能播放swf文件）</p>
<p style="border:5px solid black; padding:5px;">&lt;object width=&quot;400&quot; height=&quot;300&quot;<br>
classid=&quot;clsid:D27CDB6E-AE6D-11cf-96B8-444553540000&quot;<br>
codebase=&quot;http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#4,0,0,0&quot;&gt;<br>
&lt;param name=&quot;src&quot; value=&quot;<span class="red">mytest01.swf</span>&quot; /&gt;<br>
&lt;param name=&quot;quality&quot; value=&quot;high&quot; /&gt;<br>
&lt;/object&gt;</p>
<p>演示结果：只有IE6-IE8，及较早版本的Chrome和Safari支持，Firefox和 Opera不支持。</p>
<p>浏览器兼容性：差<br>
此方式只能播放swf文件</p>
<p><br />
</p>
<p>（2）：第二种：使用 OBJECT 元素 type、data 属性。（此方式只能播放swf文件）</p>
<p style="border:5px solid black; padding:5px;">&lt;object width=&quot;400&quot; height=&quot;300&quot; type=&quot;application/x-shockwave-flash&quot;<br>
data=&quot;<span class="red">mytest01.swf</span>&quot;&gt;&lt;/object&gt;</p>
<p>演示结果：非IE的浏览器都支持。</p>
<p>浏览器兼容性：差<br>
此方式只能播放swf文件</p>
<p><br />
</p>
<p>（3）：第三种：使用 OBJECT 元素 type、data 属性以及 PARAM 元素。（此方式只能播放swf文件）</p>
<p style="border:5px solid black; padding:5px;">&lt;object width=&quot;400&quot; height=&quot;300&quot; type=&quot;application/x-shockwave-flash&quot;<br>
data=&quot;<span class="red">mytest01.swf</span>&quot;&gt;<br>
&lt;param name=&quot;src&quot; value=&quot;<span class="red">mytest01.swf</span>&quot; /&gt;<br>
&lt;param name=&quot;quality&quot; value=&quot;high&quot; /&gt;<br>
&lt;/object&gt;</p>
<p>演示结果：所有浏览器均支持，但必须所有参数保持一致。</p>
<p>浏览器兼容性：好<br>
此方式只能播放swf文件</p>
<p><br />
</p>
<p>（4）：第四种：使用 EMBED 元素。（此方式只能播放swf文件）</p>
<p style="border:5px solid black; padding:5px;">&lt;embed src=&quot;<span class="red">mytest01.swf</span>&quot; type=&quot;application/x-shockwave-flash&quot; width=&quot;400&quot;<br>
height=&quot;300&quot; quality=&quot;high&quot;<br>
pluginspage=&quot;http://www.macromedia.com/go/getflashplayer&quot;&gt;&lt;/embed&gt;</p>
<p>演示结果：所有浏览器均支持。</p>
<p>浏览器兼容性：好<br>
此方式只能播放swf文件</p>
<p><br />
</p>
<p>（5）：第五种：可以使用开源的 SWFObject 引入 Flash。（此方式只能播放swf文件）</p>
<p style="border:5px solid black; padding:5px;"><br>
&lt;script type=&quot;text/javascript&quot; src=&quot;http://ajax.googleapis.com/ajax/libs/swfobject/2.2/swfobject.js&quot;'&gt;&lt;/script&gt;<br>
&lt;script type=&quot;text/javascript&quot;&gt;<br>
//swfobject.registerObject(&quot;mylogoswfid&quot;, &quot;9.0.115&quot;, &quot;expressInstall.swf&quot;);<br>
&lt;/script&gt;<br>
&lt;object id=&quot;mylogoswfid&quot; classid=&quot;clsid:D27CDB6E-AE6D-11cf-96B8-444553540000&quot; width=&quot;400&quot; height=&quot;300&quot;&gt;<br>
&lt;param name=&quot;movie&quot; value=&quot;<span class="red">mytest01.swf</span>&quot;/&gt;<br>
&lt;!--[if !IE]&gt;--&gt;<br>
&lt;object type=&quot;application/x-shockwave-flash&quot;' data=&quot;<span class="red">mytest01.swf</span>&quot; width=&quot;400&quot;' height=&quot;300&quot;&gt;<br>
&lt;!--&lt;![endif]--&gt;<br>
&lt;p&gt;您没有安装flash播放器，无法加载播放flash动画。&lt;/p&gt;<br>
&lt;!--[if !IE]&gt;--&gt;<br>
&lt;/object&gt;<br>
&lt;!--&lt;![endif]--&gt;<br>
&lt;/object&gt;</p>
<p>演示结果：所有浏览器均支持。</p>
<p>浏览器兼容性：好<br>
  此方式只能播放swf文件  <br />
</p>
</body>
</html>

